1. Field of the Invention
The present invention relates to a movie processing technique for executing an image deformation process.
2. Description of the Related Art
As an application of a projector, or the like, for example, a geometric process is executed. A projector requires this geometric process to correct distortion on a projection plane, which occurs depending on its installation angle, and is generally known as a keystone correction process or a trapezoid distortion correction process. There are mainly two methods for implementing the above geometric process. One of them will be referred to as a memory read deformation method, and the other will be referred to as a memory write deformation method hereafter.
A process by the memory read deformation method is characterized by execution of an image deformation process when reading out data from a frame memory. More specifically, after storing one screen of an input image in the frame memory, weighting of a pixel near input image coordinates corresponding to each set of coordinates of an output image is calculated. As a weighting calculation method, for example, a method such as the bicubic method is generally known. After weighting, an image deformation process is completed by reading out a pixel near input image coordinates corresponding to each set of coordinates of the output image from the frame memory, performing a convolution operation in consideration of the above weighting, and generating each pixel of the output image.
On the other hand, a process by the memory write deformation method is characterized by execution of an image deformation process when writing data in the frame memory. More specifically, a pixel position of an output image corresponding to each pixel of an input image is calculated, and weighting of a pixel near each set of input image coordinates is calculated. As a weighting calculation method, the bicubic method, or the like, can be used, similar to the memory read deformation method. A convolution operation is performed for a pixel near input image coordinates corresponding to each pixel position of the output image in consideration of the above weighting, and each pixel of the output image is generated and written in the frame memory. After that, a deformed output image is obtained by sequentially reading out and outputting the pixels from the frame memory. A more practical process example is disclosed in, for example, Japanese Patent No. 3394551.
The image deformation process requires frequent access to the frame memory capable of storing an image of one screen, because the scan order of an input image is different from that of an output image. The frame memory is usually implemented by a dynamic RAM on an integrated circuit. Along with a recent increase in resolution and frame rate of an image, the number of memory access operations increases, thereby raising the power consumption.
The memory read deformation method and the memory write deformation method described above will be compared with respect to a memory access area. FIG. 1A shows examples of images before and after deformation, in which a pre-deformation image is shown on the left side and a post-deformation image is shown on the right side. In FIG. 1A, a rectangular image represents a pre-deformation image, and an image obtained by deforming the rectangular image into a trapezoidal image represents a post-deformation image.
FIG. 1B shows a memory access area in the memory read deformation method in this case. A hatched portion represents a memory access area. As described above, since the memory read deformation method stores one screen of an input image in the frame memory, and then executes a deformation process by reading out the entire area, memory access for two screens occurs.
On the other hand, FIG. 1C shows a memory access area in the memory write deformation method. A hatched portion represents a memory access area. As described above, since the memory write deformation method deforms an input image before storing it, and sequentially reads out and outputs pixels from the frame memory, memory access for fewer than two screens occurs. More specifically, memory write of a trapezoidal shape and memory read of a rectangular shape of one screen occur.
In either case, however, memory access for about two screens is necessary. To keep up with a recent increase in resolution and frame rate of an image, the power consumption rises due to an increase in number of memory access operations.